#ifndef NEOCALENDARHEADERDELEGATE_H
#define NEOCALENDARHEADERDELEGATE_H

#include "def.h"
#include <QStyledItemDelegate>

class NeoCalendarHeaderDelegate : public QStyledItemDelegate
{
public:
    NeoCalendarHeaderDelegate(QObject *parent = nullptr);
    ~NeoCalendarHeaderDelegate();

    void setDisplayMode(NeoCalendarType::DisplayMode mode);
    void setTransparent(bool transparent);

    void paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const override;
    QSize sizeHint(const QStyleOptionViewItem &option, const QModelIndex &index) const override;

private:
    const int mDayShowRowCount{1};
    const int mDayShowColumnCount{7};
    const int mSpace{2};

    NeoCalendarType::DisplayMode mDisplayMode;
    bool mIsTransparent;
};

#endif